Skip to content

realhuman101/AWP

AWP - Automated Wildfire Prediction

AI for a safer, and greener future

Table of Contents

Introduction

AWP (Automated Wildfire Prediction) is a Python-based project that uses machine learning and Tensorflow to predict and prevent wildfires. By analyzing a dataset of historical wildfire data, AWP is able to identify patterns and trends that can help forecast the likelihood of future fires in a given area. This information can be used to take proactive measures to prevent fires from starting or spreading, and to help emergency responders better allocate their resources.

To view a full demo of this project, please take a look at the demo video.

For more detailed information on the project and how to use it, please visit our wiki.

This project is part of the AIoT Engineering & Entrepreneurial Skills Education for Gifted Students programme.

Requirements

  • Python 3.10 to Python 3.10.9
  • Tensorflow 2.10.0
  • Keras 2.10.0
  • Numpy 1.24.1 or higher
  • Pandas 1.5.2 or higher
  • Requests 2.28.1 or higher
  • Setuptools 63.2.0 or higher
  • Scikit-learn 1.2.1 or higher
  • Scipy 1.10.0 or higher
  • Matplotlib 3.5.1 or higher

For a complete list of requirements, please check our requirements.txt.

Installation

To install the required packages for development, run the following command:

pip install -r requirements.txt

Or, depending on your installation:

pip3 install -r requirements.txt

To install the program itself, run the following command:

pip install .

Or, depending on your installation:

pip3 install .

Usage

First we must install the program, which can be done by following the instructions in the Installation section.

We can then run/start the program by running the following command:

AWP

A GUI will then appear. You can use this GUI to interact with the model, predicting with weather data from the Hong Kong Observatory API or choose to manually input the data yourself.
To view a demo of the GUI itself, you can watch the video here.

API

We offer an API for developers to use our model in their own projects.
To view documentation for the API, look here.

Datasets

See official citation here

  • Our dataset. Citation:
    • Available at: UCI Machine Learning Repository - Algerian Forest Fires Dataset
    • Source:
    • Relevant Papers:
      • Faroudja ABID et al., Predicting Forest Fire in Algeria using Data Mining Techniques: Case Study of the Decision Tree Algorithm, International Conference on Advanced Intelligent Systems for Sustainable Development (AI2SD 2019) , 08 - 11 July, 2019, Marrakech, Morocco.

Model

Please visit the model notebook for more information.

The model is to predict the likelihood of forest fires using Tensorflow and Keras in Python. The model takes in temperature in Celsius, relative humidity as a percentage, wind speed in Kilometers per hour, and rain size in millimeters as input, and outputs a probability score between 0 and 1 indicating the likelihood of a forest fire. The model is trained on historical forest fire data, optimized using the Adam optimizer, and has an early stopping criterion to prevent overfitting. The model is then saved as a .h5 file for use in the main program.

Contributing

If you want to contribute to this project, please follow the guidelines below:

  1. Fork the repository
  2. Create a new branch for your changes
  3. Make your changes and commit them
  4. Push the new branch to your fork
  5. Submit a pull request

License

This project is licensed under the GPL v3 license. See our LICENSE for more information.

Credits

Contact

Acknowledgments

We would like to thank the following people and organizations for their support and contributions to this project:

  • Valentina Banner for creating the model, writing tests and assisting with the GUI.
  • Alicia Yuen for designing the GUI and helping create and design the project documents.
  • Maya Yan for creating the GUI.
  • CityU EE GEF for providing funding, opportunities and resources.

We are grateful for the support of the City University of Hong Kong, and for the contributions of everyone who has helped make this project what it is.